1. Field of the Invention
The present invention relates to an image processing method which uses color reproduction range information of an output device, and to an image processing apparatus and a storage medium storing processes for realizing such a method.
2. Related Background Art
A range of color reproduction of each color printer changes with its characteristics (characteristics of ink and toner, recording method and the like).
FIG. 1 shows examples of the color reproduction range. The x-y coordinates are called chromaticity coordinates which are often used when the color reproduction range of a color output device is shown in a two-dimensional area. Areas indicated by a solid line, a broken line and a one-dot chain line are the color reproduction areas of the color printers A, B and C. As seen from FIG. 1, the color reproduction range becomes larger in the order of printers A, C and B and the range of the printer A includes the range of the printer B. Namely, all colors the printer B can reproduce can be reproduced by the printer A.
FIG. 2 shows an example of the structure of a printer profile in conformity with the profile specification of ICC (International Color Consortium). This profile is constituted of a header field for management, a tag table which stores pointers to tag data, and a tag data storage field including a required tag field, an optional tag field and a private tag field. The header field stores therein device information indicating which device (e.g., monitor) has this profile, CMM (Color Management Module) information indicating which CMM uses this profile, and other information. The tag data storage field stores therein profile description information for identifying the profile. The profile description information includes, for example, a manufacturer name and a product name such as xe2x80x9cCanon LBP-2030xe2x80x9d.
The required tag field stores gamut tag data which indicates the color reproduction range of the printer.
FIG. 3 shows the data structure of the gamut tag data. The gamut tag data contains data which is used for checking whether the printer can reproduce an input device independent color (CIE xyz and CIE LAB (hereinafter described as L*a*b)). If the gamut tag data contains data for all combinations of input colors, the capacity of data becomes large. Therefore, generally, the three-dimensional input color space is divided into grids and data is allocated only to these grids (more specifically, the data are assigned to particular points, such as intersections of grid lines, in the grids, but this is expressed in this specification in terms of the data being assigned or allocated to the grids, and generally, the term xe2x80x9cgridsxe2x80x9d is used to refer to the points in color space for which data is assigned). If an input color does not correspond to the grids, the data for the input color is calculated from interpolation of data at nearby grids. In the example shown in FIG. 3, the input color space L*a*b* is divided into four along each axis. At each grid, ON data is allocated if the printer can output the color at the grid and OFF data is allocated if the printer cannot output the color.
FIG. 4 is a diagram illustrating a gamut check function of CMM. The gamut check function is a function of judging whether input RGB data whose characteristics are defined by a source profile (profile of a scanner or a monitor) can be output from a printer whose characteristics are defined by a printer profile. In accordance with information of the source profile and gamut tag data of the printer profile, a gamut check function of CMM judges whether the input RGB data can be output from the printer, and if the data can be output, ON data is returned, whereas if not, OFF data is returned.
FIG. 5 is a diagram illustrating the details of the process to be executed by the gamut check function illustrated in FIG. 4. The input RGB data is converted into L*a*b* in accordance with the information (data used for converting RGB data into device independent color space L*a*b*) in the source profile. The L*a*b is input to the gamut check function which refers to the gamut data in the printer profile to judge whether the color can be output, and if the color can be output, ON data is output, whereas if not OFF data is output.
As described above, conventionally, whether color data can be output from a printer is judged from the gamut tag data in the printer profile.
FIG. 6 is a diagram illustrating a print proof process using a function of CMM. The meaning of a color matching proof is that the results of input RGB data, whose characteristics are defined by the source profile (profile of a scanner or monitor), to be output color matched from a printer, are simulated on another printer. This other printer simulating the print results is called a proof printer. In this case, the proof printer is generally required to include the color reproduction range (gamut) of a printer to be simulated, because if it does not include, the simulation precision is degraded. FIG. 6 illustrates an example of a process of simulating an output of the printer B by using the printer A shown in FIG. 1. Since the printer A includes the gamut of the printer B, the requirements as a proof printer are satisfied. In this print proof process, a color matching process is performed for the input RGB data whose characteristics are defined by the source profile, by using the printer profile of the printer B, to thereby convert the input RGB data into color data in the color space of the printer B (into color data in the gamut of the printer B). A color matching process is performed for the color space data by using the printer profile (source) of the printer B and the printer profile (output) of the printer A, to thereby convert the color data in the color space of the printer A into color data in the color space of the printer A (into color data in the gamut of the printer A).
FIG. 7 shows an example of a print dialog to be used by the proof process. Conventionally, in order to perform the proof process one example of which has been described with reference to FIG. 6, it is necessary to select a monitor profile as the source profile and a printer profile of a simulated printer and a printer profile of a proof printer as the output profiles.
In a network system having a plurality of color printers, a color document is printed by selecting one of the printers. In such a case, it is conventionally not easy to select an optimum color printer and output a color document by taking into consideration the color reproduction ability of each color printer matching the data type of the color document.
Also in a network system having a plurality of color printers, one of the color printers is selected and its output results are simulated through a color matching process by using another printer as a proof printer. In such a case, it is conventionally not easy to select an optimum proof printer and simulate the output results.
It is an object of the present invention to select an output device by taking into consideration of the color reproduction ability of each output device matching the data type of a color document.
According to a preferred embodiment of the invention achieving the above object, an image processing apparatus comprises means for discriminating an image type of a color document, and means for selecting an output device for outputting the color image from among a plurality of output devices on the basis of a discrimination result obtained by the discriminating means and color gamut information of the plurality of output devices. It is another object of the present invention to automatically select an optimum proof printer from a plurality of printers in order to simulate the output results of another printer through a color matching process by using the proof printer.
According to a preferred embodiment of the invention achieving the above object, an image processing method comprises the steps of discriminating an image type of a color document, and selecting an output device for outputting the color document from among a plurality of output devices on the basis of a discrimination result obtained in the discriminating step and color gamut information of the plurality of output devices. It is another object of the present invention to compare color reproduction ranges at high speed.
According to a preferred embodiment of the invention achieving the above object, an image processing method comprises the steps of inputting a multi-dimensional table representing color gamut information of a first device and a multi-dimensional table representing color gamut information of a second device, and comparing a color reproduction range of the first device with a color gamut of the second device by matching the number of grids of the multi-dimensional table representing the color gamut information of the first device and the number of grids of the multi-dimensional table representing the color gamut information of the second device.
Still other objects of the present invention and the advantages thereof will become fully apparent from the following detailed description of the embodiments.